Golfer&#39;s impact properties during a golf swing

ABSTRACT

A method for determining a golfer&#39;s golf club head orientation and impact location for a golf swing is disclosed herein. The method inputs the optimized values for the golf club head orientation and impact location, a plurality of golf swing properties of a golfer, a plurality of mass properties of a first golf club, and a plurality of mass properties of a first golf ball into a rigid body code. A plurality of calculated ball launch parameters is generated from the rigid body, which are compared to a plurality of actual ball launch parameters measured using a CMOS imaging system. The ball launch parameters are compared to each other to verify the optimized values. If the verification is not within a predetermined value, new optimized values are selected for the method. The method is repeated until the verification is within the value.

CROSS REFERENCES TO RELATED APPLICATIONS

The present application is a continuation application of U.S. patent application Ser. No. 10/843,782, filed on May 11, 2004, which claims priority to U.S. Provisional Application No. 60/498,796, filed on Aug. 28, 2003.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

Not Applicable

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method for determining a golfer's impact properties for a golf swing. More specifically, the present invention relates to a method for determining a golfer's golf club head orientation and impact location for a golf swing.

2. Description of the Related Art

For over twenty-five years, high speed camera technology has been used for gathering information on a golfer's swing. The information has varied from simple club head speed to the spin of the golf ball after impact with a certain golf club. Over the years, this information has fostered numerous improvements in golf clubs and golf balls, and assisted golfers in choosing golf clubs and golf balls that improve their game. Additionally, systems incorporating such high speed camera technology have been used in teaching golfers how to improve their swing when using a given golf club.

An example of such a system is U.S. Pat. No. 4,063,259 to Lynch et al., for a Method Of Matching Golfer With Golf Ball, Golf Club, Or Style Of Play, which was filed in 1975. Lynch discloses a system that provides golf ball launch measurements through use of a shuttered camera that is activated when a club head breaks a beam of light that activates the flashing of a light source to provide stop action of the club head and golf ball on a camera film. The golf ball launch measurements retrieved by the Lynch system include initial velocity, initial spin velocity and launch angle.

Another example is U.S. Pat. No. 4,136,387 to Sullivan, et al., for a Golf Club Impact And Golf Ball Launching Monitoring System, which was filed in 1977. Sullivan discloses a system that not only provides golf ball launch measurements, it also provides measurements on the golf club.

Yet another example is a family of patents to Gobush et al.,: U.S. Pat. No. 5,471,383 filed on Sep. 30, 1994; U.S. Pat. No. 5,501,463 filed on Feb. 24, 1994; U.S. Pat. No. 5,575,719 filed on Aug. 1, 1995; and U.S. Pat. No. 5,803,823 filed on Nov. 18, 1996. This family of patents discloses a system that has two cameras angled toward each other, a golf ball with reflective markers, a golf club with reflective markers thereon and a computer. The system allows for measurement of the golf club or golf ball separately, based on the plotting of points.

Yet another example is U.S. Pat. No. 6,042,483 for a Method Of Measuring Motion Of A Golf Ball. The patent discloses a system that uses three cameras, an optical sensor means, and strobes to obtain golf club and golf ball information.

The prior disclosures and most launch monitors, however, fail to disclose a system and method that determine the impact location and golf club head orientation during a golfer's swing.

BRIEF SUMMARY OF THE INVENTION

The present invention is a method that allows for determining the impact location and golf club head orientation during a golfer's swing based on information obtained during a golfer's swing and measured inherent properties of a golf ball and golf club. The present invention uses an optimization method such as the Powell Optimization method or the Nelder & Mead Simplex optimization method to obtain the impact location and golf club head orientation.

One aspect of the present invention is a method for determining a golfer's impact properties during a golf swing. The method includes providing a plurality of golf club head properties for a golf club, a plurality of golf ball properties for a golf ball, and a first optimization value including an orientation of the golf club head during impact with a golf ball and an impact location of the golf ball on the golf club head. The method also includes measuring an angular velocity of the golf club and the linear velocity of the golf club during the golfer's swing, and a plurality of actual ball launch parameters. The method also includes inputting the plurality of golf club properties, the plurality of golf ball properties, the angular velocity of the golf club, the linear velocity of the golf club, and the first optimization value into a rigid body code. The method also includes generating a plurality of calculated ball launch parameters from the rigid body code. The method also includes verifying the accuracy of the plurality of calculated ball launch parameters.

Another aspect of the present invention is using the impact properties obtained through an optimization method to predict a golfer's ball striking performance. The method includes providing a plurality of golf club head properties for a first golf club, a plurality of golf ball properties for a first golf ball, and a first optimization value including an orientation of the golf club head during impact with a golf ball and an impact location of the golf ball on the golf club head. The method also includes measuring an angular velocity of the golf club and the linear velocity of the golf club during the golfer's swing, and a plurality of actual ball launch parameters. The method also includes inputting the plurality of golf club properties, the plurality of golf ball properties, the angular velocity of the golf club, the linear velocity of the golf club, and the first optimization value into a rigid body code. The method also includes generating a first plurality of ball launch parameters from the rigid body code for the first golf ball. The method also includes inputting the first plurality of ball launch parameters, a plurality of atmospheric conditions and a plurality of lift and drag properties for the first golf ball into a trajectory code. The method also includes generating the performance from the trajectory code of the first golf ball if struck by the golfer with the first golf club under the plurality of atmospheric conditions. The method also includes inputting a plurality of mass properties of a second golf club, the plurality of mass properties of the first golf ball, the angular velocity of the golf club, the linear velocity of the golf club, orientation of the golf club head during impact with a golf ball, and the impact location of a golf ball on the golf club head into the rigid body code. The method also includes generating a second plurality of ball launch parameters from the rigid body code. The method also includes inputting the second plurality of ball launch parameters, the plurality of atmospheric conditions and the plurality of lift and drag properties for the first golf ball into the trajectory code. The method also includes generating the performance from the trajectory code of the first golf ball if struck by the golfer with the second golf club under the first atmospheric conditions. The method also includes inputting the plurality of mass properties of the first golf club, a plurality of mass properties of a second golf ball the angular velocity of the golf club, the linear velocity of the golf club, orientation of the golf club head during impact with a golf ball, and the impact location of a golf ball on the golf club head into the rigid body code. The method also includes generating a third plurality of ball launch parameters from the rigid body code. The method also includes inputting the third plurality of ball launch parameters, the plurality of atmospheric conditions and a plurality of lift and drag properties for the second golf ball into the trajectory code. The method also includes generating the performance from the trajectory code of the second golf ball if struck by the golfer with the first golf club under the atmospheric conditions.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is a flow chart of the general method of the present invention.

FIG. 2 is a flow chart illustrating the inputs for the measured values.

FIG. 3 is a flow chart illustrating the inputs for the golf club swing properties.

FIG. 4 is a flow chart illustrating the inputs for the measured golf ball inherent properties.

FIG. 5 is a flow chart illustrating the inputs for the measured golf club head inherent properties.

FIG. 6 is a flow chart of the contents for the plurality of actual ball launch parameters.

FIG. 7 is a flow chart of the contents for the plurality of calculated ball launch parameters.

FIG. 8 is a flow chart of the inputs for the optimized values.

FIG. 9 is a flow chart of the inputs for the optimized values for the golf club head orientation.

FIG. 10 is a perspective view of a golf club head illustrating the yaw, pitch and roll of the golf club head.

FIG. 11 is a flow chart for the verification of the ball results.

FIG. 12 is a flow chart of the contents for the comparison of the actual and calculated plurality of ball launch parameters.

FIG. 13 is a flow chart of the contents for the weighting of the absolute values of the differences between the actual and calculated plurality of ball launch parameters.

FIG. 14 is a perspective view of the monitoring system of the present invention.

FIG. 15 is a schematic representation of a full frame CMOS sensor array.

FIG. 15A is a schematic representation of a field of view.

FIG. 16 a schematic representation of a ROI within the CMOS sensor array.

FIG. 17 a schematic representation of an object within the field of view.

FIG. 18 a schematic representation of an object within the field of view.

FIG. 19 a schematic representation of a ROI within the CMOS sensor array.

FIG. 20 a schematic representation of an object within the field of view.

FIG. 21 a schematic representation of a ROI within the CMOS sensor array.

FIG. 22 a schematic representation of an object within the field of view.

FIG. 23 a schematic representation of a ROI within the CMOS sensor array.

FIG. 24 is a flow chart of a method of using the system of the invention.

FIG. 25 is a flow chart of a method of using the system of the invention.

FIG. 26 is a flow chart of a method of using the system of the invention.

FIG. 27 is a flow chart of a method of using the system of the invention.

FIG. 28 is a flow chart of a method of using the system of the invention.

FIG. 29 is a schematic representation of the highly reflective points of the golf club positioned in accordance with the first, second and third exposures of the golf club.

FIG. 30 is an isolated view of a golf ball striped for measurement.

FIG. 30A is an isolated view of a golf ball striped for measurement using an image with a partial phantom of a prior image with vector signs present to demonstrate calculation of angle θ.

FIG. 31 illustrates first, second and third images of the connected highly reflective points on a golf club, and the teed golf ball for the first find grouping of the highly reflective points.

FIG. 31A illustrates first, second and third images of the connected highly reflective points on a golf club, and the teed golf ball for the first find grouping of the highly reflective points.

FIG. 32 illustrates first, second and third images of the connected highly reflective points on a golf club, and the teed golf ball for the second find grouping of the highly reflective points.

FIG. 33 illustrates first, second and third images of the connected highly reflective points on a golf club, and the teed golf ball for the second find grouping of the highly reflective points.

FIG. 34 illustrates first, second and third images of the connected highly reflective points on a golf club, and the teed golf ball with repeated points eliminated and results of the find displayed.

FIG. 35 illustrates first, second and third images of the connected highly reflective points on a golf club, and the teed golf ball with repeated points eliminated and results of the find displayed.

FIG. 36 is a chart of the processed final pairs giving the x, y and z coordinates.

FIG. 37 is an illustration of the thresholding of the images for the golf ball in flight.

FIG. 38 is an isolated view of the golf ball to illustrate determining the best ball center and radius.

FIG. 39 is a partial flow chart with images of golf balls for stereo correlating two dimensional points.

FIG. 40 illustrates the teed golf ball and the first, second third and fourth images of the golf ball after impact, along with positioning information.

FIG. 41 is a flow chart of a method of predicting performance using the impact location and golf club head orientation values obtained through the optimization method.

FIG. 42 is a table of the golf club swing properties.

FIG. 43 is a table of the plurality of actual ball launch parameters.

FIG. 44 is a table of the golf club head properties.

FIG. 45 is a table of the golf ball properties.

FIG. 46 is a table of a plurality of calculated ball launch parameters.

FIG. 47 is a table of optimized values for the impact location and golf club head orientation.

FIG. 48 is a table of the difference between the actual and calculated plurality of ball launch parameters.

FIG. 49 is a table of the weighting of the absolute values of the differences between the actual and calculated plurality of ball launch parameters.

FIG. 50 a table of the error value.

DETAILED DESCRIPTION OF THE INVENTION

As shown in FIG. 1, a method for determining a golfer's impact properties during a golf swing is generally designated 20. The method 20 involves using measured dynamic properties for a golfer during a golf swing and inherent properties of a golf ball and golf club to determine through an optimization method the impact location and the orientation of the golf club during the golfer's swing. At block 22, the first optimized values for impact location and the orientation of the golf club during the golfer's swing are selected by an operator. These first optimized values are speculative, and are probably not the true values for the impact location and the orientation of the golf club during the golfer's swing. However, these first optimized values must be used to obtain the true values for the impact location and the orientation of the golf club during the golfer's swing. At block 24, the measured values are collected for input to determine through an optimization method the impact location and the orientation of the golf club during the golfer's swing.

At block 26, information from blocks 22 and 24 are inputted into a rigid body code. The rigid body code is set forth in equations B1-B13 below, and explained in further detail below. At block 28, the rigid body code generates a plurality of calculated ball launch parameters. At block 30, a plurality of actual ball launch parameters is collected from an acquisition system as discussed below. At block 32, the plurality of calculated ball launch parameters is verified by comparison to the plurality of actual ball launch parameters, as discussed in greater detail below. At block 34, if the value obtained during the verification step of block 32 is within an error value, then the values selected for the impact location and the orientation of the golf club during the golfer's swing are correct and the true values for the impact location and the orientation of the golf club during the golfer's swing. At block 36, if the value obtained during the verification step of block 32 is outside of the error value, then the values selected for the impact location and the orientation of the golf club during the golfer's swing is not correct and an optimization method must be used to obtain the true values for the impact location and the orientation of the golf club during the golfer's swing.

At block 38, the optimization method selects new values for the impact location and the orientation of the golf club during the golfer's swing for input into the rigid body code at block 26. A preferred optimization method is the Powell Optimization method, which is disclosed in Chapter 10 of Numerical Recipes in C: The Art Of Scientific Computing, Cambridge University Press (1988-1992), which pertinent parts are hereby incorporated by reference. An alternative optimization method is the Nelder & Mead Simplex optimization method. Those skilled in the relevant art will recognize that other optimization methods may be used with the method without departing from the scope and spirit of the present invention. The method is repeated with new optimization values until the value obtained during the verification step of block 32 is within an error value thereby indicating that the true values for the impact location and the orientation of the golf club during the golfer's swing have been determined by the method.

FIG. 2 is a flow chart illustrating the inputs or content of the measured values of block 24 of FIG. 1. Block 40 contains the golf swing properties. Block 41 contains the measured golf ball inherent properties. Block 42 contains the measured golf club inherent properties.

FIG. 3 is a flow chart illustrating the inputs or content of the golf club swing properties of block 40 of FIG. 2. The golf club swing properties are obtained from the acquisition system as disclosed below. Block 43 contains the linear velocity of the golf club during the golfer's swing. Block 44 contains the angular velocity of the golf club during the golfer's swing.

FIG. 4 is a flow chart illustrating the inputs for the measured golf ball inherent properties of block 41 of FIG. 2. The measurement of the mass of the golf ball is collected at block 45. The measurement of the radius of the golf ball is collected at block 46. The measurement of the coefficient of restitution of the golf ball is collected at block 47. The measurement of the moment of inertia of the golf ball is collected at block 48. The data collected at blocks 45-48 is inputted to create the measured golf ball inherent properties at block 41 of FIG. 2.

The golf ball properties of block 41 that are stored and collected include the mass of the golf ball (the Rules of Golf, as set forth by the USGA and the R&A, limit the mass to 45 grains or less), the radius of the golf ball (the Rules of Golf require a diameter of at least 1.68 inches), the COR of the golf ball and the MOI of the golf ball. The MOI of the golf ball may be determined using method well known in the industry. One such method is disclosed in U.S. Pat. No. 5,899,822, which pertinent parts are hereby incorporated by reference. The COR is determined using a method such as disclosed in U.S. Pat. No. 6,443,858, entitled Golf Ball With A High Coefficient Of Restitution, assigned to Callaway Golf Company, the assignee of the present application, and which pertinent parts are hereby incorporated by reference.

FIG. 5 is a flow chart illustrating the inputs for the golf club head properties of block 42 of FIG. 2. The measurements for the face properties are collected at block 49. The face properties include the face geometry, the face center, the bulge radius and the roll radius. The measurements for the mass properties of the golf club head are collected or recalled from a database at block 50. The mass properties include the inertia tensor, the mass of the club head, and the center of gravity location. The measurement for the coefficient of restitution (“COR”) of the golf club head using a specific golf ball is collected at block 51. The measurements for the loft and lie angles of the golf club head are collected at block 52. The data collected at blocks 49-52 is inputted to create the golf club head properties at block 42 of FIG. 2.

The mass, bulge and roll radii, loft and lie angles, face geometry and face center are determined using conventional methods well known in the golf industry. The inertia tensor is calculated using: the moment of inertia about the x-axis, Ixx; the moment of inertia about the y-axis, Iyy; the moment of inertia about the z-axis, Izz; the product of inertia Ixy; the product of inertia Izy; and the product of inertia Izx. The CG and the MOI of the club head are determined according to the teachings of U.S. Pat. No. 6,607,452, entitled High Moment of Inertia Composite Golf Club, assigned to Callaway Golf Company, the assignee of the present application, and hereby incorporated by reference in its entirety. The products of inertia Ixy, Ixz and Izy are determined according to the teachings of U.S. Pat. No. 6,425,832, entitled Golf Club Head That Optimizes Products Of Inertia, assigned to Callaway Golf Company, the assignee of the present application, and hereby incorporated by reference in its entirety.

The COR of the golf club head is determined using a method used by the United States Golf Association (“USGA”) and disclosed at www.usga.org, or using the method and system disclosed in U.S. Pat. No. 6,585,605, entitled Measurement Of The Coefficient Of Restitution Of A Golf Club, assigned to Callaway Golf Company, the assignee of the present application, and hereby incorporated by reference in its entirety. However, the COR of the golf club head is predicated on the golf ball, and will vary for different types of golf balls.

FIG. 6 is a flow chart of the contents of the plurality of actual ball launch parameters at block 30 of FIG. 1. The side spin of the golf ball is measured at block 53. The back spin of the golf ball is measured at block 54. The ball speed is measured at block 55. The side angle of the golf ball is measured at block 56. The launch angle of the golf ball is measured at block 57. The information from blocks 53-57 is inputted/contained as the measured ball launch parameters or plurality of actual ball launch parameters, at block 30 of FIG. 1.

FIG. 7 is a flow chart of the contents of the plurality of calculated ball launch parameters at block 28 of FIG. 1. The side spin of the golf ball is calculated at block 63. The back spin of the golf ball is calculated at block 64. The ball speed is calculated at block 65. The side angle of the golf ball is calculated at block 66. The launch angle of the golf ball is calculated at block 67. The information from blocks 63-67 is inputted/contained as the calculated ball launch parameters or plurality of calculated ball launch parameters, at block 28 of FIG. 1.

FIG. 8 is a flow chart of the optimization values of block 22 of FIG. 1. The impact location is selected at block 69. The golf club head orientation is selected at block 70.

FIG. 9 is a flow chart of the inputs/contents of the optimization values for the golf club head orientation of block 70 of FIG. 8. The pitch of the golf club head is selected at block 71. The yaw of the golf club head is selected at block 72. The roll of the golf club head is selected at block 73. FIG. 10 illustrates the pitch, yaw and roll of a golf club head 133.

FIG. 11 is a flow chart of the verification step of block 32 of FIG. 1. At block 74, the information from block 28 (the plurality of calculated ball launch parameters) and the information from block 30 (the plurality of actual ball launch parameters) are compared to each other, and the absolute value of the differences is obtained for further processing at block 75. At block 75, absolute values obtained at block 74 are weighted in accordance of importance to determining the true values of the impact location and the orientation of the golf club during the golfer's swing. At block 76, the weighted values from block 75 are used in a root-mean-sum equation to obtain an error check value. In such a root-mean-sum calculation, the product of each of the weighted absolute values to the second power are added together and the square root of that addition value is the error value. In a preferred example, if the error value is within 30, then the optimization values are acceptable, and these values are accepted as the true values of the impact location and the golf club head orientation. If the error value is greater than 30, then the optimized values are not accepted and new optimized values must be used to calculate a new set of a plurality of calculated ball launch parameters to verify against the plurality of actual ball launch parameters.

FIG. 12 is a flow chart illustrating the comparison process to obtain the absolute values for the plurality of ball launch parameters. At block 77, the differences between the side spin of the plurality of calculated ball launch parameters and the side spin of the plurality of actual ball launch parameters is obtained to determine the absolute value of the side spin for the ball launch parameters. At block 78, the differences between the back spin of the plurality of calculated ball launch parameters and the back spin of the plurality of actual ball launch parameters is obtained to determine the absolute value of the back spin for the ball launch parameters. At block 79, the differences between the ball speed of the plurality of calculated ball launch parameters and the ball speed of the plurality of actual ball launch parameters is obtained to determine the absolute value of the ball speed for the ball launch parameters. At block 80, the differences between the side angle of the plurality of calculated ball launch parameters and the side angle of the plurality of actual ball launch parameters is obtained to determine the absolute value of the side angle for the ball launch parameters. At block 81, the differences between the launch angle of the plurality of calculated ball launch parameters and the launch angle of the plurality of actual ball launch parameters is obtained to determine the absolute value of the launch angle for the ball launch parameters.

FIG. 13 is a flow chart illustrating the weighting process to obtain the weighted absolute values for the plurality of ball launch parameters. At block 82, the absolute value for the side spin is weighted to determine a weighted absolute value for the side spin for the plurality of ball launch parameters. At block 83, the absolute value for the back spin is weighted to determine a weighted absolute value for the back spin for the plurality of ball launch parameters. At block 84, the absolute value for the ball speed is weighted to determine a weighted absolute value for the ball speed for the plurality of ball launch parameters. At block 85, the absolute value for the side angle is weighted to determine a weighted absolute value for the side angle for the plurality of ball launch parameters. At block 86, the absolute value for the launch angle is weighted to determine a weighted absolute value for the launch angle for the plurality of ball launch parameters.

The acquisition system used to measure the dynamic swing properties of the golfer and the plurality of actual ball launch parameters is a system that captures and analyzes golf club information and golf ball information during and after a golfer's swing. The golf club information includes golf club head orientation, golf club head velocity, and golf club spin. The golf club head orientation includes dynamic lie, loft and face angle of the golf club head. The golf club head velocity includes path of the golf club head and attack of the golf club head. The golf ball information includes golf ball velocity, golf ball launch angle, golf ball side angle, golf ball speed and golf ball orientation. The golf ball orientation includes the true spin of the golf ball, and the tilt axis of the golf ball which entails the back spin and the side spin of the golf ball. The various measurements will be described in greater detail below.

As shown in FIG. 14, the acquisition system 120 generally includes a computer 122, a camera structure 124 with a first CMOS camera unit 126, a second CMOS camera unit 128 and an optional trigger device 130, a golf ball 132 and a golf club 133. The acquisition system 120 is designed to operate on-course, at a driving range, inside a retail store/showroom, or at similar facilities.

The first camera unit 126 preferably includes a first camera 140 and optional flash units 142 a and 142 b. The second camera unit 128 preferably includes a second camera 44 and optional flash units 146 a and 146 b. A preferred camera is a complementary metal oxide semiconductor (“CMOS”) camera with active pixel technology and a full frame rate ranging from 250 to 500 frames per second.

The field of view of the cameras 140 and 144 corresponds to the CMOS sensor array 200. In a preferred embodiment, the CMOS sensor array 200 is at least one megapixel in size having one thousand rows of pixels and one thousand columns of pixels for a total of one million pixels.

As shown in FIG. 15, a CMOS sensor array 200 preferably has one million active pixels 205. Each active pixel 205 is capable of acting as a single camera to provide an image or a portion of an image. As shown in FIG. 15A, the field of view 1000 corresponds to the full frame sensor array 200, which preferably operates at a minimum frame rate ranging from 250 to 500 frames per second, however, it may have a frame rate as low as 30 frames per second. At this frame rate, the CMOS sensor array is monitoring the field of view at a rate of 250-500 times per second and is capable of creating images at 250 to 500 times per second. The CMOS sensor array 200 preferably has one thousand columns of active pixels 205 and one thousand rows of active pixels 205. In a preferred embodiment, the field of view 1000 is large enough to capture pre-impact golf club information and post-impact golf ball information. However, those skilled in the pertinent art will recognize that the field of view 1000 may be adjusted to focus on any particular action by the golfer such as only pre-impact information, putting information, and the like.

As shown in FIG. 16, an initial region of interest (“ROI”) 210 is established at the edge 150 of the field of view 1000 or CMOS sensor array 200. In a preferred embodiment, the initial ROI 210 extends along all of the rows of the sensor array 200 and from 10 to 100 columns of the CMOS sensor array 200 beginning with the first column of active pixels 205 at the edge 150. In establishing an ROI, only those pixels within the ROI are activated while the pixels outside of the ROI are deactivated. Reducing the number of active pixels 205 increases the frame rate in a pseudo-inverse relationship. Thus, if only 25% of the active pixels of the CMOS sensor array are activated, and the full frame rate of the CMOS sensor array 200 is 500 frames per second. Then, the frame rate of the ROI is 2000 frames per second. Thus, reducing the number of active pixels 205 allows for the increased monitoring of a ROI thereby providing increased information about an object entering the ROI since an increased number of images may be obtained of the object within the ROI.

The establishment of an ROI 210 at the edge 150′ allows for “through the lens” triggering of the system 20. The through the lens triggering is a substitute for the triggering device 30. The system 20 is monitoring the ROI 210 at a very high frame rate, 1000 to 4000 frames per second, to detect any activity, or the appearance of the golf club 133. The system 120 can be instructed to monitor the ROI 210 for a certain brightness provided by the reflected dots 106 a-c. Once the system 20 detects the object in the ROI 210, the cameras are instructed to gather information on the object. FIG. 17 illustrates the object or golf club, shown as reflective dots 106 a-c, as entering the field of view 100.

As the golf club 133 tracks through the field of view 1000, the CMOS sensor array 200 creates new ROIs the encompass the reflective dots 106 a-c. As shown in FIG. 18, the golf club 133 (shown by the reflective dots 106 a-c) has moved from its position in FIG. 17. As shown in FIG. 19, a second ROI 215 is established around the golf club 133. It is preferably to create an ROI having a minimum size since the frame rate is increased as the number of active pixels 205 is reduced. Some CMOS cameras only allow reduction in the number of columns which would limit the frame rate.

As the object or golf club 133 moves through the field of view 1000, the current ROI preferably overlaps the previous ROI in order to better track the movement of the object or golf club 33. As shown in FIG. 20, the current ROI 220 (shown by bold dashed lines) overlaps the previous ROI 217 (shown by small dashed lines). FIG. 21 illustrates the CMOS sensor array 200 for ROI 220.

FIGS. 22 and 23 illustrate the continued movement of the object or golf club 133 through the field of view 1000 and the new ROI 225 encompassing the current position of the golf club 133.

FIG. 24 is a flow chart of a method 300 of using the system 120 of the invention. At box 301, the full CMOS sensor array is active similar to FIG. 15. At box 302, an object such as a golf club 33 is detected within the field of view 1000. If analyzing a golfer's swing, this first detection may be the golfer addressing the golf ball 166. During this address of the golf ball, the system 120 may be gathering information concerning the orientation of the club head to the golf ball as the golfer adjusts the position of the golf club to strike the golf ball. The CMOS sensor array 200 is operating at a minimum frame rate since all of the active pixels 205 are activated. However, since the movement of the golf club 133 is slow, this minimum frame rate is sufficient to gather the necessary information.

At box 303, a ROI is created around the object. At box 304, the objected is monitored at a higher frame rate. At box 305, the object is removed from the field of view. If the golf club 133 is monitored during address at box 304, increased information is provided until the golf club is taken away for a swing. Alternatively, if a golf ball 166 is monitored at prior to impact, at impact and post impact, then the ROI is created around the golf ball 166 until it leaves the field of view 1000.

FIG. 25 is a flow chart of a specific method 310 for analysis of a golf club at address. At box 311, the CMOS sensor array monitors the field of view 1000 at a minimum frame rate. At box 312, the indication markers (reflective dots or other like markers) on the golf club 133 are detected within the field of view 1000. At box 313, a ROI is created around the indication markers of the golf club 133. At box 314, the golf club 133 is monitored at a higher frame rate within the ROI. At box 315, the golf club 133 is taken away from the field of view 1000.

FIG. 26 is a method 320 for using the system 120 to monitor an object. At box 321, a portion of the field of view 1000 is monitored at a maximum rate, similar to the ROI 210 established and monitored in FIG. 16. At box 322, an object is detected within the ROI. At box 323, a first ROI is created around the object. At box 324, a plurality of ROIs is created around the object as it tracks through the field of view 1000. At box 325, information is provided on the movement of the object through the field of view.

FIG. 27 is a flow chart of a method 330 for using the system to monitor a golf club. At box 331, a portion of the field of view 1000 is monitored at a maximum rate, similar to the ROI 210 established and monitored in FIG. 16. At box 332, a golf club 133, or more specifically the indication markers of the golf club 133, is detected within the ROI. At box 333, a first ROI is created around the indications markers on the golf club 133. At box 334, a plurality of ROIs is created around the indication markers as the golf club tracks through the field of view 1000. At box 335, information is provided on the movement of the golf club through the field of view to determine the swing properties of the golfer.

FIG. 28 is a flow chart of a method 340 for using the system to monitor a golf ball during launch. At box 341, an ROI is created around the golf ball prior to impact with a golf club. At box 342, movement of the golf ball 166 is detected by the system 120. At box 343, a plurality of ROIs is created around the golf ball during the initial launch of the golf ball subsequent to impact with a golf club. At box 344, the system analyzes the movement of the golf ball to provide launch parameters of the golf ball 166.

The CMOS sensor array 200 can operate at frames rates 4000 frames per second for a very small ROI. However, processing time between images or frames requires preferably less than 500 microseconds, and preferably less than 250 microseconds. The processing time is needed to analyze the image to determine if an object is detected and if the object is moving.

The system 120 may be calibrated using many techniques known to those skilled in the pertinent art. One such technique is disclosed in U.S. Pat. No. 5,803,823, which is hereby incorporated by reference. The system 120 is calibrated when first activated, and then may operate to analyze golf swings for golfers until deactivated.

As mentioned above, the system 120 captures and analyzes golf club information and golf ball information during and after a golfer's swing. The system 120 uses the images and other information to generate the information on the golfer's swing. The golf club 133 has at least two, but preferably three highly reflective points 106 a-c preferably positioned on the shaft, heel and toe of the golf club 133. The highly reflective points 106 a-c may be inherent with the golf club design, or each may be composed of a highly reflective material that is adhesively attached to the desired positions of the golf club 133. The points 106 a-c are preferably highly reflective since the cameras 140 and 144 are preferably programmed to search for two or three points that have a certain brightness such as 200 out of a gray scale of 0-255. The cameras 140 and 144 search for point pairs that have approximately one inch separation, and in this manner, the detection of the golf club 133 is acquired by the cameras for data acquisition.

As shown in FIG. 29, the first row of acquired highly reflective points 106 a (on the shaft) is designated series one, the second row of acquired highly reflective points 106 b (on the heel) is designated series two, and the third row of acquired highly reflective points 106 c (on the toe) is designated series three. The first row is the acquired highly reflective points 106 a from the shaft, the second row is the acquired highly reflective points 106 a from the heel, and the third row is the acquired highly reflective points 106 a from the toe. The following equation is used to acquire the positioning information: d=[(Ptx−Pnx)²+(Pty−Ptny)² . . . ]^(1/2)

where d is the distance, Ptx is the position in the x direction and Pty is the position in the y direction.

The system 120 may use a three point mode or a two point mode to generate further information. The two point mode uses V_(toe), V_(heel) and V_(clubtop) to calculate the head speed. V _(toe)=[(Ptx ₃ −Ptx ₁)²+(Pty ₃ −Pty ₁)²+(Ptz ₃ −Ptz ₁)²]^(1/2)[1/δT] V _(heel)=[(Ptx ₃ −Ptx ₁)²+(Pty ₃ −Pty ₁)²+(Ptz ₃ −Ptz ₁)²]^(1/2)[1/δT] V _(clubtop) =[V _(toe) +V _(heel)][1/2] Vy=[(y _(3heel) −y _(1heel))²+(y _(3toe) −y _(1toe))²]^(1/2)[1/(2*δT)] Vz=[(z _(3heel) −z _(1heel))²+(z _(3toe) −z _(1toe))²]^(1/2)[1/(2*δT)]

This information is then used to acquire the path angle and attack angle of the golf club 133. The Path angle=sin⁻¹(Vy/[V]) where [V] is the magnitude of V.

The attack angle=sin⁻¹(Vz/[V]), and the dynamic loft and dynamic lie are obtained by using Series one and Series two to project the loft and lie onto the vertical and horizontal planes.

The two point mode uses the shaft highly reflective point 106 a or the toe highly reflective point 106 c along with the heel highly reflective point 106 b to calculate the head speed of the golf club, the path angle and the attack angle. Using the shaft highly reflective point 106 a, the equations are: V _(heel)=[(Ptx ₃ −Ptx ₁)²+(Pty ₃ −Pty ₁)²+(Ptz ₃ −Ptz ₁)²]^(1/2)[1/δT] V _(shaft)=[(Ptx ₃ −Ptx ₁)²+(Pty ₃ −Pty ₁)²+(Ptz ₃ −Ptz ₁)²]^(1/2)[1/δT] V _(center)=1.02*(V _(shaft) +V _(heel)) Vy=[(y _(3heel) −y _(1heel))²+(y _(3shaft) −y _(1shaft))²]^(1/2)[1/(2*δT)] Vz=[(z _(3heel) −z _(1heel))²+(z _(3shaft) −z _(1shaft))²]^(1/2)[1/(2*δT)]

The Path angle=sin⁻¹(Vy/[V]) where [V] is the magnitude of V.

The attack angle=sin⁻¹(Vz/[V]).

Using the toe highly reflective point 106 c, the equations are: V _(toe)=[(x ₃ −x ₁)²+(y ₃ −y ₁)²+(z ₃ −z ₁)²]^(1/2)[1/δT] V _(heel)=[(x ₂ −x ₁)²+(y ₂ −y ₁)²+(z ₂ −z ₁)²]^(1/2)[1/δT] V _(clubtop) =[V _(toe) +V _(heel)][1/2]

The path angle=sin⁻¹(Vy_(clubtop)/[V_(clubtop)]) where [V_(clubtop)] is the magnitude of V_(clubtop).

The attack angle=sin⁻¹(Vz_(clubtop)/[V_(clubtop)]) where [V_(clubtop)] is the magnitude of V_(clubtop).

The golf ball 166 information is mostly obtained from images of the golf ball post impact. First, the best radius and position of the two dimensional areas of interest are determined from the images. Next, all of the combinations of the golf ball 166 centers in the images are matched and passed through a calibration model to obtain the X, Y, and Z coordinates of the golf ball 166. The system 120 removes the pairs with an error value greater then 5 millimeters to get acceptable X, Y, Z coordinates. Next, the velocity of the golf ball 166 is obtained from Vx, Vy and Vz using a linear approximation. Next the golf ball speed is obtained by calculating the magnitude of Vx, Vy and Vz. The launch angle=sin⁻¹(Vz/golf ball speed), and the spin angle=sin⁻¹(Vy/golf ball speed).

Next, the system 120 looks for the stripes 108 a-b, as shown in FIGS. 30 and 30A, on the golf ball 166 by using a random transformation searching for the spot of greatest contrast. X, Y and Z coordinates are used with the arc of stripe 108 a and the arc of stripe 108 b to orient the arc on the golf ball. Then, the system 120 determines which arc is most normal using (x²+y²)^(1/2).

Next, the θ angle of the golf ball 166 is measured by taking the first vector and the second vector and using the equation: θ=cos⁻¹ [(vector A1)(vector A2)]/([V ₁ ][V ₂]) where [V ₁] is the magnitude of V ₁ and [V ₂] is the magnitude of V ₂.

As the golf ball 166 rotates from the position shown in FIG. 30 to the position shown in FIG. 30A, the angle θ is determined from the position of vector A at both rotation positions. This allows for the spin to be determined. The back spin is calculated and applied to the first set of axis with a tilt axis of zero. The resultant vectors are compared to those of the next image and a theta is calculated for each of the vectors. This is done for each tilt axis until the Theta between the rotated first set of axis and the second set of axis is minimized.

The following is an example of how the system captures and analyzes golf club information and golf ball information during and after a golfer's swing. The golf club information includes golf club head orientation, golf club head velocity, and golf club spin. The golf club head orientation includes dynamic lie, loft and face angle of the golf club head. The golf club head velocity includes path of the golf club head, attack of the golf club head and downrange information. The golf ball information includes golf ball velocity, golf ball launch angle, golf ball side angle, golf ball speed manipulation and golf ball orientation. The golf ball orientation includes the true spin of the golf ball, and the tilt axis of the golf ball which entails the back spin and the side spin of the golf ball.

The system 120 pairs the points 106 a-c, verifying size, separation, orientation and attack angle. Then, the system 120 captures a set of six points (three pairs) from a first find as shown in FIGS. 31 and 31A. Then, the system 120 searches above and below the three pairs for a second find, as shown in FIGS. 32 and 33. The repeated points 106 are eliminated and the results are displayed from the find, as shown in FIGS. 34 and 35. The points of the final pairs are processed by the computer 122 and displayed as shown in FIG. 36.

Next the speed of the head of the golf club 133 is determined by the system 120 using the equations discussed above.

Next the path angle and the attack angle of the golf club 133 is determined by the system 120. Using the methods previously described, the attack angle is determined from the following equation: Attack angle=−a tan(δz/δx)

Where δz is the z value of the midpoint between 106 a ₁ and 106 b ₁ minus the z value of the midpoint between 106 a ₃ and 106 b ₃. Where δx is the x value of the midpoint between 106 a ₁ and 106 b ₁ minus the x value of the midpoint between 106 a ₃ and 106 b ₃.

The path angle is determined from the following equation: path angle=−a tan(δy/δx)

Where δy is the y value of the midpoint between 106 a ₁ and 106 b ₁ minus the y value of the midpoint between 106 a ₃ and 106 b ₃. Where δx is the x value of the midpoint between 106 a ₁ and 106 b ₁ minus the x value of the midpoint between 106 a ₃ and 106 b ₃.

Next, the golf ball 166 data is determined b the system 120. First, the thresholding of the image is established as shown in FIG. 37, at a lower gray scale value, approximately 100 to 120, to detect the golf ball 166. Next, well-known edge detection methods are used to obtain the best golf ball 166 center and radius, as shown in FIG. 38. Next, the stereo correlation of two dimensional points on the golf ball 166 is performed by the system 120 as in FIG. 39, which illustrates the images of the first camera 140 and the second camera 144.

Next, as shown in FIG. 40, with the positioning information provided therein, the speed of the golf ball 166, the launch angle of the golf ball 166, and the side angle of the golf ball 166 is determined by the system 120. The speed of the golf ball is determined by the following equation: Golf ball speed=[δX ² +δY ² +δZ ²]^(1/2) /δT. For the information provided in FIG. 40, the speed of the golf ball=[(−161.68+(−605.26))²+(−43.41+(−38.46))²+(−282.74+(−193.85))²]^(1/2)/(13127−5115), which is equal to 126 MPH once converted from millimeters over microseconds.

The launch angle of the golf ball 166 is determined by the following equation: Launch angle=sin⁻¹(Vz/golf ball speed) where Vz=δZ/δT. For the information provided in FIG. 40, Vz=[(−282.74+(−193.85)]/(13127−5115)=11.3 MPH. Then, the launch angle=sin⁻¹(11.3/126.3)=11.3 degrees.

The side angle of the golf ball 166 is determined by the following equation: Side angle=sin⁻¹(Vy/golf ball speed) where Vy=δY/δT. For the information provided in FIG. 40, Vy=[(−43.41+(−38.46)]/(13127−5115)=1.4 MPH. Then, the side angle=sin⁻¹(1.4/126.3)=0.6 degrees.

The ball spin is calculated by determining the location of the three striped on each of the acquired golf balls. Matching each axis in the field of view and determine which of the axis is orthogonal to the vertical plane. The spin is then calculated by: θ=a cos((vectorA1 dot vector A2)/mag(v1)*mag(v2)) as discussed above.

The rigid body code solves the impact problem using conservation of linear and angular momentum, which gives the complete motion of the two rigid bodies. The impulses are calculated using the definition of impulse, and the equations are set forth below. The coordinate system used for the impulse equations is set forth below. The impulse-momentum method does not take in account the time history of the impact event. The collision is described at only the instant before contact and the instant after contact. The force transmitted from the club head to the ball is equal and opposite to the force transmitted from the ball to the club head. These forces are conveniently summed up over the period of time in which the two objects are in contact, and they are called the linear and angular impulses.

The rigid body code assumes that both the golf ball 166 and the golf club head 150 are unconstrained rigid bodies, even though the golf club head 150 is obviously connected to the shaft 152, and the ball 166 is not floating in air upon impact with the golf club head 150. For the golf club head 150, the assumption of an unconstrained rigid body is that the impact with the golf ball 166 occurs within a very short time frame (microseconds), that only a small portion of the tip of the shaft 152 contributes to the impact. For the golf ball 166, the impulse due to friction between itself and the surface it is placed upon (e.g. tee, mat or ground) is very small in magnitude relative to the impulse due to the impact with the golf club head 150, and thus this friction is ignored in the calculations.

In addition to the normal coefficient of restitution, which governs the normal component of velocity during the impact, there are coefficients of restitution that govern the tangential components of velocity. The additional coefficients of restitution are determined experimentally.

The absolute performance numbers are defined in the global coordinate system, or the global frame. This coordinate system has the origin at the center of the golf ball, one axis points toward the intended final destination of the shot, one axis points straight up into the air, and the third axis is normal to both of the first two axis. The global coordinate system preferably follows the right hand rule.

The coordinate system used for the analysis is referred to as the impact coordinate system, or the impact frame. This frame is defined relative to the global frame for complete analysis of a golf shot. The impact frame is determined by the surface normal at the impact location on the golf club head 150. The positive z-direction is defined as the normal outward from the golf club head 150. The plane tangent to the point of impact contains both the x-axis and the y-axis. For ease of calculation, the x-axis is arbitrarily chosen to be parallel to the global ground plane, and thus the yz-plane is normal to the ground plane. The impact frame incorporates the loft, bulge and roll of a club head, and also includes the net result of the golf swing. Dynamic loft, open or close to the face, and toe down all measured for definition of the impact frame. Motion in the impact frame is converted to equivalent motion in the global frame since the relationship between the global coordinate system and the impact coordinate system is known. The post impact motion of the golf ball 166 is used as inputs in the Trajectory Code, and the distance and deviation of the shot is calculated by the present invention.

-   The symbols are defined as below: -   {right arrow over (i)}=(1 0 0), the unit vector in the x-direction. -   {right arrow over (j)}=(0 1 0), the unit vector in the y-direction. -   {right arrow over (k)}=(0 0 1), the unit vector in the z-direction. -   m₁, the mass of the club head. -   m₂, the mass of the golf ball.     ${\lbrack I\rbrack_{1} = \begin{bmatrix}     I_{{xx},1} & {- I_{{xy},1}} & {- I_{{xz},1}} \\     {- I_{{xy},1}} & I_{{yy},1} & {- I_{{yz},1}} \\     {- I_{{xz},1}} & {- I_{{yz},1}} & I_{{zz},1}     \end{bmatrix}},$     the inertia tensor of the club head.     ${{\lbrack I\rbrack_{2} = \begin{bmatrix}     I_{{xx},2} & {- I_{{xy},2}} & {- I_{{xz},2}} \\     {- I_{{xy},2}} & I_{{yy},2} & {- I_{{yz},2}} \\     {- I_{{xz},2}} & {- I_{{yz},2}} & I_{{zz},2}     \end{bmatrix}},}\quad$     the inertia tensor of the golf ball. -   {right arrow over (r)}₁=(a₁ b₁ c₁), the vector from point of impact     to the center of gravity of the club head. -   {right arrow over (r)}₂=(a₂ b₂ c₂), the vector from point of impact     to the center of gravity of the golf ball. -   {right arrow over (r)}₃=−{right arrow over (r)}₁+{right arrow over     (r)}₂=(−a₁+a₂ −b₁+b₂ −c₁+c₂)=(a₃ b₃ c₃), the vector from center of     gravity of club head to the center of gravity of the golf ball. -   {right arrow over (v)}_(1,i)=(v_(x,1,i) v_(y,1,i) v_(z,1,i)), the     velocity of the club head before impact. -   {right arrow over (v)}_(1,f)=(v_(x,1,f) v_(y,1,f) v_(z,1,f)), the     velocity of the club head after impact. -   {right arrow over (v)}_(1,i)=(v_(x,1,i) v_(y,1,i) v_(z,1,i)), the     velocity of the golf ball before impact. -   {right arrow over (v)}_(2,f)=(v_(x,2,f) v_(y,2,f) v_(z,2,f)), the     velocity of the golf ball after impact. -   {right arrow over (ω)}_(1,i)=(ω_(x,1,i) ω_(y,1,i) ω_(z,1,i)), the     angular velocity of the club head before impact. -   {right arrow over (ω)}_(1,f)=(ω_(x,1,f) ω_(y,1,f) ω_(z,1,f)), the     angular velocity of the club head after impact. -   {right arrow over (ω)}_(2,i)=(ω_(x,2,i) ω_(y,2,i) ω_(z,2,i)), the     angular velocity of the golf ball before impact. -   {right arrow over (ω)}_(2,f)=(ω_(x,2,f) ω_(y,2,f) ω_(z,2,f)), the     angular velocity of the golf ball after impact.     ${\lbrack e\rbrack = \begin{bmatrix}     e_{xx} & e_{xy} & e_{xz} \\     e_{xy} & e_{yy} & e_{yz} \\     e_{xz} & e_{yz} & e_{zz}     \end{bmatrix}},$     the coefficient of restitution matrix. -   [L]=m{right arrow over (v)}, definition of linear momentum. -   [H]=[I]{right arrow over (ω)}, definition of angular momentum.     Conservation of linear momentum:     m ₁ {right arrow over (v)} _(1,f) +m ₂ {right arrow over (v)} _(2,f)     =m ₁ {right arrow over (v)} _(1,i) +m ₂ {right arrow over (v)}     _(2,i)   B1-B3     Conservation of angular momentum: $\begin{matrix}     {{{{\lbrack I\rbrack_{1}{\overset{\rightharpoonup}{\omega}}_{1,f}} + {\lbrack I\rbrack_{2}{\overset{\rightharpoonup}{\omega}}_{2,f}} + {m_{1}\begin{bmatrix}     {{{- c_{1}}v_{y,1,f}} + {b_{1}v_{z,1,f}}} \\     {{c_{1}v_{x,1,f}} - {a_{1}v_{z,1,f}}} \\     {{a_{1}v_{y,1,f}} - {b_{1}v_{x,1,f}}}     \end{bmatrix}} + {m_{2}\begin{bmatrix}     {{{- c_{2}}v_{y,2,f}} + {b_{2}v_{z,2,f}}} \\     {{c_{2}v_{x,2,f}} - {a_{1}v_{z,2,f}}} \\     {{a_{2}v_{y,2,f}} - {b_{1}v_{x,2,f}}}     \end{bmatrix}}} = {{\lbrack I\rbrack_{1}{\overset{\rightharpoonup}{\omega}}_{1,i}} + {\lbrack I\rbrack_{2}{\overset{\rightharpoonup}{\omega}}_{2,i}} + {m_{1}\begin{bmatrix}     {{{- c_{1}}v_{y,1,i}} + {b_{1}v_{z,1,i}}} \\     {{c_{1}v_{x,1,i}} - {a_{1}v_{z,1,i}}} \\     {{a_{1}v_{y,1,i}} - {b_{1}v_{x,1,i}}}     \end{bmatrix}} + {m_{2}\begin{bmatrix}     {{{- c_{2}}v_{y,2,i}} + {b_{2}v_{z,2,i}}} \\     {{c_{2}v_{x,2,i}} - {a_{2}v_{z,2,i}}} \\     {{a_{2}v_{y,2,i}} - {b_{2}v_{x,2,i}}}     \end{bmatrix}}}}\quad} & {{B4}\text{-}{B6}}     \end{matrix}$     The definition of coefficients of restitution: $\begin{matrix}     {{- {\lbrack e\rbrack\left\lbrack \quad\begin{matrix}     {\left( {v_{x,2,i} + {\overset{\rightharpoonup}{i} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{2,i} \times \left( {- {\overset{\rightharpoonup}{r}}_{2}} \right)} \right)}} \right) - \left( {v_{x,1,i} + {\overset{\rightharpoonup}{i} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{1,i} \times \left( {- {\overset{\rightharpoonup}{r}}_{1}} \right)} \right)}} \right)} \\     {\left( {v_{y,2,i} + {\overset{\rightharpoonup}{j} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{2,i} \times \left( {- {\overset{\rightharpoonup}{r}}_{2}} \right)} \right)}} \right) - \left( {v_{y,1,i} + {\overset{\rightharpoonup}{j} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{1,i} \times \left( {- {\overset{\rightharpoonup}{r}}_{1}} \right)} \right)}} \right)} \\     {\left( {v_{z,2,i} + {\overset{\rightharpoonup}{k} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{2,i} \times \left( {- {\overset{\rightharpoonup}{r}}_{2}} \right)} \right)}} \right) - \left( {v_{z,1,i} + {\overset{\rightharpoonup}{k} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{1,i} \times \left( {- {\overset{\rightharpoonup}{r}}_{1}} \right)} \right)}} \right)}     \end{matrix} \right\rbrack}} = {\quad\left\lbrack \quad\begin{matrix}     {\left( {v_{x,2,f} + {\overset{\rightharpoonup}{i} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{2,f} \times \left( {- {\overset{\rightharpoonup}{r}}_{2}} \right)} \right)}} \right) - \left( {v_{x,1,f} + {\overset{\rightharpoonup}{i} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{1,f} \times \left( {- {\overset{\rightharpoonup}{r}}_{1}} \right)} \right)}} \right)} \\     {\left( {v_{y,2,f} + {\overset{\rightharpoonup}{j} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{2,f} \times \left( {- {\overset{\rightharpoonup}{r}}_{2}} \right)} \right)}} \right) - \left( {v_{y,1,f} + {\overset{\rightharpoonup}{j} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{1,f} \times \left( {- {\overset{\rightharpoonup}{r}}_{1}} \right)} \right)}} \right)} \\     {\left( {v_{z,2,f} + {\overset{\rightharpoonup}{k} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{2,f} \times \left( {- {\overset{\rightharpoonup}{r}}_{2}} \right)} \right)}} \right) - \left( {v_{z,1,f} + {\overset{\rightharpoonup}{k} \cdot \left( {{\overset{\rightharpoonup}{\omega}}_{1,f} \times \left( {- {\overset{\rightharpoonup}{r}}_{1}} \right)} \right)}} \right)}     \end{matrix} \right\rbrack\quad}} & {{B7}\text{-}{B9}}     \end{matrix}$     The tangential impulse on the ball causes both rotation and     translation: $\begin{matrix}     {{m_{2}\begin{bmatrix}     {{c_{2}\left( {v_{y,2,f} - v_{y,2,i}} \right)} - {b_{2}\left( {v_{z,2,f} - v_{z,2,i}} \right)}} \\     {{- {c_{2}\left( {v_{x,2,f} - v_{x,2,i}} \right)}} + {a_{2}\left( {v_{z,2,f} - v_{z,2,i}} \right)}} \\     {{b_{2}\left( {v_{x,2,f} - v_{x,2,i}} \right)} - {a_{2}\left( {v_{y,2,f} - v_{y,2,i}} \right)}}     \end{bmatrix}} = {\lbrack I\rbrack_{2}\begin{bmatrix}     {\omega_{x,2,f} - \omega_{x,2,i}} \\     {\omega_{y,2,f} - \omega_{y,2,i}} \\     {\omega_{z,2,f} - \omega_{z,2,i}}     \end{bmatrix}}} & {{B10}\text{-}{B12}}     \end{matrix}$     Equations B1-B12 can be combined to form a system of linear     equations of the form:     [A]{x}={B}  B13     where [A], and {B} are determined from the known velocities before     the impact, the mass properties of the golf ball 166 and golf club     head 150, the impact location relative to the center of gravity of     the golf ball 166 and the golf club head 150, and the surface normal     at the point of impact. {x} contains all the post impact velocities     (linear and angular), and is solved by pre-multiplying {B} by the     inverse of [A], or any other method in solving system of equations     in linear algebra.

When the golf ball 166 is sitting on the tee 168, it is in equilibrium. The golf ball 166 will not move until a force that's greater than F_(m), the maximum static friction force between the golf ball 166 and the tee 168, is applied on the golf ball 166. F_(m)=μ_(s)N=μ_(s)m₂g   C1 μ_(s) , is the static coefficient of friction and g is gravity. For a golf ball 166 with 45 grams of mass, and a μ_(s) of 0.3, F _(m)=μ_(s) mg=(0.3)(0.045)(9.81)=0.132N Assume this force is applied on the golf ball 166 for the duration of an impact of 0.0005 sec (which is an overestimation of the actual impulse), then the impulse, L, on the golf ball 166 is: L=(0.132)(0.0005)=0.0000662N·s This impulse, L, would cause the golf ball 166 to move at 0.00147 m/s (or 0.00483 ft/sec), and rotate at 8.08 rad/sec (or 77.1 rpm). Both of these numbers are small relative to the range of numbers normally seen for irons and woods. If the rigid body code of the present invention were to be applied to putters, then it would be preferable to include the friction force between the green and the golf ball 166 for the analysis. ${\lbrack e\rbrack = \begin{bmatrix} e_{xx} & e_{xy} & e_{xz} \\ e_{xy} & e_{yy} & e_{yz} \\ e_{xz} & e_{yz} & e_{zz} \end{bmatrix}}\quad$

Each of the individual terms in the above matrix, e_(ij), where i=x, y, z, and j =x, y, z, relates the velocity in the i-direction to the j-direction. Each of the diagonal terms, where i=j, indicate the relationship in velocity of one of the axis, x, y, or z, before and after the impact. Let x, y, z be the axis defined in the impact frame. The term e_(zz) includes all the energy that is lost in the impact in the normal direction of impact. e_(xx) and e_(yy) are account for the complicated interaction between the golf ball 166 and the golf club head 150 in the tangential plane by addressing the end result. In general, the off diagonal terms e_(ij), where i≠j, are equal to zero for isotropic materials.

As shown in FIG. 41, a method for predicting a golfer's ball striking performance is generally designated 90. A similar method is disclosed in U.S. Pat. No. 6,506,124 for a Method For Predicting A Golfer's Ball Striking Performance, assigned to Callaway Golf Company (the Assignee of the present application) and hereby incorporated by reference in its entirety. The method 90 commences with inputting information on a specific golf club, specific golf ball, and the swing characteristics of a golfer. At block 91, the club head properties of the specific golf club are selected from a database of stored and previously collected club head information. The specific information for the club head properties is set forth in greater detail above in reference to FIG. 5, specifically the inputs to block 42. At block 92, the golf club swing properties of the golfer are collected and stored in a database. The specific information for the golfer's golf club swing properties includes the true values for the impact location and the golf club head orientation, which are obtained according to method 20 of FIG. 1. Additionally, information from FIG. 3, specifically the inputs to block 40, are part of the golf club swing properties. At block 93, the golf ball properties of the specific golf ball are selected from database of stored and previously collected golf ball information. The specific information for the golf ball properties is set forth in greater detail above in reference to FIG. 4, specifically the inputs to block 41.

At block 94, the information from blocks 91, 92 and 93 are inputted into a rigid body code. The rigid body code is explained in greater detail above. At block 94, the rigid body code is used to generate a plurality of ball launch parameters, such as disclosed above in reference to FIG. 7, specifically the inputs for block 28. At block 95, information concerning the atmospheric conditions is selected from a database of stored atmospheric conditions. At block 97, information concerning the lift and drag properties of the golf ball are collected and stored. The lift and drag properties of golf balls are measured using conventional methods such as disclosed in U.S. Pat. No. 6,186,002, entitled Method For Determining Coefficients Of Lift And Drag Of A Golf Ball, which is hereby incorporated by reference in its entirety. The lift and drag coefficients of a number of golf balls at specific Reynolds numbers are disclosed in U.S. Pat. No. 6,224,499, entitled A Golf Ball With Multiple Sets Of Dimples, which pertinent parts are hereby incorporated by reference.

At block 98, the ball launch parameters, the atmospheric conditions and the lift and drag properties are inputted into a trajectory code. At block 99, the trajectory code is utilized to predict the performance of the golfer when swinging the specific golf club, with the specific golf ball under the specific atmospheric conditions. Trajectory codes are known in the industry, and one such code is disclosed in the afore-mentioned U.S. Pat. No. 6,186,002. The USGA has such a trajectory code available for purchase.

In predicting the performance of a golf ball struck by a golfer with a specific golf club under predetermined atmospheric conditions, an operator has the option of inputting an impact of the face at a certain location regardless of the true location of impact. This allows for prediction of the performance of the golf club 133 for toe shots, heel shots and center shots. The type of golf ball may be selected, the type of golf club may be selected, the atmospheric conditions including wind speed, direction, relative humidity, air pressure, temperature and the terrain may be selected by the operator to predict a golfer's performance using these input parameters along with the pre-impact swing properties for the golfer.

FIG. 42 is a table of the golf club swing properties of block 40 for a six exemplary golf shots using a BIG BERTHA C4® Driver available from Callaway Golf Company of Carlsbad, Calif., which is composed of a composite material.

FIG. 43 is a table of the plurality of actual ball launch parameters of block 30 for the six exemplary golf shots using a HX® RED Golf Ball available from Callaway Golf Company of Carlsbad.

FIG. 44 is a table of the measured golf club inherent properties of block 42 for a BIG BERTHA C4® Driver available from Callaway Golf Company of Carlsbad, Calif., which is composed of a composite material.

FIG. 45 is a table of the golf ball properties of block 41 for a HX® RED Golf Ball available from Callaway Golf Company of Carlsbad.

FIG. 46 is a table of the plurality of calculated ball launch parameters of block 28 generated by the rigid body code for six exemplary shots. The table includes an example of information for blocks 63-67 of FIG. 7.

FIG. 47 is a table of the plurality of optimized values for the impact location and orientation of the golf club head of block 69 and 70 for the six exemplary shots.

FIG. 48 is a table of differences between the actual and calculated plurality of ball launch parameters of 74 for the six exemplary shots. The table includes an example of information for blocks 77-81 of FIG. 12.

FIG. 49 is a table of the weighting values for absolute values of the differences between the actual and calculated plurality of ball launch parameters of 75 for the six exemplary shots. The table includes an example of information for blocks 82-86 of FIG. 13.

FIG. 50 is a table of the error value of block 76 for the six exemplary shots.

From the foregoing it is believed that those skilled in the pertinent art will recognize the meritorious advancement of this invention and will readily understand that while the present invention has been described in association with a preferred embodiment thereof, and other embodiments illustrated in the accompanying drawings, numerous changes, modifications and substitutions of equivalents may be made therein without departing from the spirit and scope of this invention which is intended to be unlimited by the foregoing except as may appear in the following appended claims. Therefore, the embodiments of the invention in which an exclusive property or privilege is claimed are defined in the following appended claims. 

1. A method for determining a golfer's impact properties during impact of a golf club with a golf ball, the method comprising: obtaining a first optimization value, the first optimization value comprising an orientation of a golf club head of the golf club during impact with a golf ball and an impact location of the golf ball on a face of the golf club head; measuring an angular velocity of the golf club and a linear velocity of the golf club during the golfer's swing using a CMOS imaging system, the CMOS imaging system having a sensor array with at least one megapixel in size, wherein the CMOS imaging system forms a region of interest operating at a frame rate of 1000 to 4000 frames per second prior to the golf club entering the field of view and then forms subsequent regions of interest as the golf club travels through the field of view; measuring a plurality of actual ball launch parameters using the CMOS imaging system; inputting a plurality of golf club properties, a plurality of golf ball properties, the angular velocity of the golf club, the linear velocity of the golf club, and the first optimization value into a rigid body code; generating a plurality of calculated ball launch parameters from the rigid body code; and verifying the accuracy of the plurality of calculated ball launch parameters to actual ball parameters by obtaining a plurality of absolute values of the differences between each of the ball launch parameters of the plurality of calculated ball launch parameters and the plurality of actual ball launch parameters, weighting each of the plurality of absolute values of the differences to create a plurality of weighted values, and obtaining an error value from the root-mean-sum of the plurality of weighted values.
 2. The method according to claim 1 wherein the plurality of golf club head properties comprises the mass of the golf club head, the location of the center of gravity of the golf club head relative to the impact location of the golf ball, the inertia tensor of the golf club head, the geometry of the face of the golf club head, the bulge and roll radii of the face of the golf club head, the loft of the golf club head and the face center location of the golf club head.
 3. The method according to claim 1 wherein the plurality of golf ball properties comprises the mass of the golf ball, the coefficient of restitution of the first golf ball at a speed of 143 feet per second, the moment of inertia of the golf ball and the radius of the golf ball.
 4. The method according to claim 1 wherein the plurality of actual ball launch parameters comprises a launch angle of the golf ball, a side angle of the golf ball, a golf ball speed, a side spin of the golf ball and a back spin of the golf ball.
 5. The method according to claim 1 wherein the plurality of calculated ball launch parameters comprises a launch angle of the golf ball, a side angle of the golf ball, a golf ball speed, a side spin of the golf ball and a back spin of the golf ball.
 6. The method according to claim 2 wherein the plurality of golf club head properties further comprises the coefficient of restitution of the golf club head when striking the golf ball, and a spin coefficient of restitution of the golf club head when striking the golf ball.
 7. A method for determining a golfer's impact properties during impact of a golf club with a golf ball, the method comprising: a) providing an optimization value, the optimization value comprising an orientation of a golf club head of the golf club during impact with the golf ball and an impact location of the golf ball on a face of the golf club head; b) measuring an angular velocity of the golf club and a linear velocity of the golf club during the golfer's swing using a CMOS imaging system, the CMOS imaging system having a sensor array with at least one megapixel in size, wherein the CMOS imaging system forms a region of interest operating at a frame rate of 1000 to 4000 frames per second prior to the golf club entering the field of view and then forms subsequent regions of interest as the golf club travels through the field of view during the golfer's swing; c) measuring a plurality of actual ball launch parameters using the CMOS imaging system; d) providing a plurality of golf club head properties for the golf club; e) providing a plurality of golf ball properties for the golf ball; f) inputting the plurality of golf club properties, the plurality of golf ball properties, the angular velocity of the golf club, the linear velocity of the golf club, and the optimization value into a rigid body code; g) generating a plurality of calculated ball launch parameters from the rigid body code; h) verifying the accuracy of the plurality of calculated ball launch parameters to actual ball parameters by obtaining a plurality of absolute values of the differences between each of the ball launch parameters of the plurality of calculated ball launch parameters and the plurality of actual ball launch parameters, weighting each of the plurality of absolute values of the differences to create a plurality of weighted values, and obtaining an error value from the root-mean-sum of the plurality of weighted values; i) repeating steps d-h with different optimization values using non-linear optimization methods until the accuracy of the plurality of calculated ball launch parameters is verified to measurements in step c.
 8. The method according to claim 7 wherein the optimization value for the orientation of the golf club head comprises the yaw of the golf club head, the pitch of the golf club head and the roll of the golf club head, all relative to the ground.
 9. The method according to claim 7 wherein the optimization value for the impact location of the golf ball with the golf club head comprises a X-coordinate relative to the center of a face of the golf club head and a Y-coordinate relative to the center of the face of the golf club head.
 10. The method according to claim 7 wherein the optimization values are generated from the Powell non-linear optimization method.
 11. The method according to claim 7 wherein the plurality of golf club head properties comprises the mass of the golf club head, the location of the center of gravity of the golf club head relative to the impact location of the golf ball, the inertia tensor of the golf club head, the geometry of the face of the golf club head, the bulge and roll radii of the face of the golf club head, the loft of the golf club head and the face center location of the golf club head.
 12. The method according to claim 7 wherein the plurality of golf ball properties comprises the mass of the golf ball, the coefficient of restitution of the first golf ball at a speed of 143 feet per second, the moment of inertia of the golf ball and the radius of the golf ball.
 13. The method according to claim 7 wherein the plurality of actual ball launch parameters comprises a launch angle of the golf ball, a side angle of the golf ball, a golf ball speed, a side spin of the golf ball and a back spin of the golf ball.
 14. The method according to claim 7 wherein the plurality of calculated ball launch parameters comprises a launch angle of the golf ball, a side angle of the golf ball, a golf ball speed, a side spin of the golf ball and a back spin of the golf ball.
 15. A method for determining a golfer's impact properties during a golf swing, the method comprising: inputting a plurality of golf club properties, a plurality of golf ball properties, an angular velocity of a golf club, a linear velocity of the golf club, and an optimization value into a rigid body code, wherein the optimization value is generated from a Powell non-linear optimization method; generating a plurality of calculated ball launch parameters from the rigid body code; and verifying the accuracy of the plurality of calculated ball launch parameters against a plurality of actual ball launch parameters measured using a CMOS imaging system, the CMOS imaging system having a sensor array with at least one megapixel in size, wherein the CMOS imaging system forms a region of interest operating at a frame rate of 1000 to 4000 frames per second prior to a golf ball entering the field of view and then forms subsequent regions of interest as the golf ball travels through the field of view.
 16. The method according to claim 15 wherein the optimization value comprises an orientation of the golf club head during impact with a golf ball and an impact location of the golf ball on the golf club head.
 17. A method for determining a golfer's impact properties during a golf swing, the method comprising: providing a plurality of golf club head properties for a golf club; providing a plurality of golf ball properties for a golf ball; providing a first optimization value, the first optimization value comprising an orientation of the golf club head during impact with a golf ball and an impact location of the golf ball on the golf club head; measuring an angular velocity of the golf club and the linear velocity of the golf club during the golfer's swing; measuring a plurality of actual ball launch parameters; inputting the plurality of golf club properties, the plurality of golf ball properties, the angular velocity of the golf club, the linear velocity of the golf club, and the first optimization value into a rigid body code; generating a plurality of calculated ball launch parameters from the rigid body code; and verifying the accuracy of the plurality of calculated ball launch parameters.
 18. The method according to claim 17 wherein the plurality of golf club head properties comprises the mass of the golf club head, the location of the center of gravity of the golf club head relative to the impact location of the golf ball, the inertia tensor of the golf club head, the geometry of the face of the golf club head, the bulge and roll radii of the face of the golf club head, the loft of the golf club head and the face center location of the golf club head.
 19. The method according to claim 17 wherein the plurality of golf ball properties comprises the mass of the golf ball, the coefficient of restitution of the first golf ball at a speed of 143 feet per second, the moment of inertia of the golf ball and the radius of the golf ball.
 20. The method according to claim 17 wherein the plurality of actual ball launch parameters comprises a launch angle of the golf ball, a side angle of the golf ball, a golf ball speed, a side spin of the golf ball and a back spin of the golf ball.
 21. The method according to claim 17 wherein the plurality of calculated ball launch parameters comprises a launch angle of the golf ball, a side angle of the golf ball, a golf ball speed, a side spin of the golf ball and a back spin of the golf ball.
 22. A method for determining a golfer's impact properties during a golf swing, the method comprising: b) providing an optimization value, the optimization value comprising an orientation of the golf club head during impact with a golf ball and an impact location of the golf ball on the golf club head; b) measuring an angular velocity of the golf club and the linear velocity of the golf club during the golfer's swing; c) measuring a plurality of actual ball launch parameters, wherein the plurality of actual ball launch parameters comprises a launch angle of the golf ball, a side angle of the golf ball, a golf ball speed, a side spin of the golf ball and a back spin of the golf ball; d) providing a plurality of golf club head properties for a golf club, wherein the plurality of golf club head properties comprises a mass of the golf club head, a location of the center of gravity of the golf club head relative to the impact location of the golf ball, an inertia tensor of the golf club head, the geometry of the face of the golf club head, a bulge and roll radii of the face of the golf club head, a loft of the golf club head and a face center location of the golf club head; e) providing a plurality of golf ball properties for a golf ball, wherein the plurality of golf ball properties comprises a mass of the golf ball, a coefficient of restitution of the first golf ball at a speed of 143 feet per second, a moment of inertia of the golf ball and a radius of the golf ball; f) inputting the plurality of golf club properties, the plurality of golf ball properties, the angular velocity of the golf club, the linear velocity of the golf club, and the optimization value into a rigid body code; g) generating a plurality of calculated ball launch parameters from the rigid body code, wherein the plurality of calculated ball launch parameters comprises a launch angle of the golf ball, a side angle of the golf ball, a golf ball speed, a side spin of the golf ball and a back spin of the golf ball; h) verifying the accuracy of the plurality of calculated ball launch parameters; i) repeating steps d-h with different optimization values until the accuracy of the plurality of calculated ball launch parameters is verified.
 23. The method according to claim 22 wherein the verifying the accuracy of the plurality of calculated ball launch parameters comprises: obtaining a plurality of absolute values of the differences between each of the ball launch parameters of the plurality of calculated ball launch parameters and the plurality of actual ball launch parameters; weighting each of the plurality of absolute values of the differences to create a plurality of weighted values; and obtaining an error value from the root-mean-sum of the plurality of weighted values.
 24. The method according to claim 22 wherein the optimization value for the orientation of the golf club head comprises the yaw of the golf club head, the pitch of the golf club head and the roll of the golf club head, all relative to the ground.
 25. The method according to claim 22 wherein the optimization value for the impact location of the golf ball with the golf club head comprises a X-coordinate relative to the center of a face of the golf club head and a Y-coordinate relative to the center of the face of the golf club head. 